/**
 * 获取指定缓存的数据
 * @param key 缓存的字段key
 * @returns 处理过的数据
 */
export const GetStorage = (key: string) => {
  let data: any = localStorage.getItem(key)
  try {
    data = JSON.parse(data)
  } catch (error) {
    return data
  }
  return data
}
/**
 * 缓存指定的数据
 * @param key 缓存指定数据对应的key
 * @param data 需要缓存的数据
 */
export const SetStorage = (key: string, data: any) => {
  if (typeof data !== 'string') {
    try {
      data = JSON.stringify(data)
    } catch (error) {
      console.error(error, data)
    }
  }
  localStorage.setItem(key, data)
}
/**
 * 删除缓存
 * @param key 需要删除的缓存数据对应的key
 * @param isAll 是否全部删除
 */
export const RemoveStorage = (key?: string, isAll = false) => {
  !isAll && localStorage.removeItem(key as string)
  isAll && localStorage.clear()
}
